Cloud computing environments provide a potential platform for allowing users to have access to large amounts of computing resources without having to invest in corresponding infrastructure. Instead, the computing environment can be provided as a service by a cloud computing provider. This can allow a user to tune the requested computing resources to match the size and importance of a computing job. However, taking full advantage of the additional computing resources available as a service may require dividing computing tasks into smaller portions, so that multiple physical or virtual processors can be used to perform a task.